\chapter{Entwurf des NOP-Engine}

\section{Vorkenntnisse zum Entwurf}
\subsection{Java-Interface} im folgenden wird nur Interface angewendet.
\subsection{Softwarearchitektur}
Was ist sa, wozu dient sa
\subsection{DDD}
kategorisieren der Dom"anenobjekten
\subsubsection{Entit"aten} f"ur DB
\subsubsection{Wert-Objekte} Unterscheiden sich mit Entit"aten
\subsubsection{Services}
Problem zu l"osen.
\subsubsection{Repositorien}
eine Liste von Dom"anenobjekten, zugreifen von DB, Anlegen von Dom"anenobjekten, Manager von Services.
\subsubsection{Aggregate}
\subsection{Klassendiagramme}
\subsection{Sequenzdiagramme}
\subsection{paketdiagramme}

\section{Softwarearchitektur des NOP-Engine}
\subsection{Schichtenmodell mit der isolierten Dom"anenschicht}
\engl{layered architecture with the isolated domain layer}
mit bild
Erkl"aren der 4 Schichten.
 

\section{Dom"anenschicht}


\subsection{Entit"aten}

\subsection{Wert-Objekte}
\subsection{Aggregate}
\subsubsection{Zone und Thema}
\subsubsection{NOP und Thema}
\subsubsection{Benutzer-Session}
\subsubsection{klassendiagramm} 


\subsection{Services}
\subsubsection{NopEngine}
Jede funktionale Anforderung, eine Schnittstelle.
\subsubsection{Services zum Berechnen von NOPs}

\subsection{Repository}
\subsubsection{Repository f"ur die Entit"aten}


\subsubsection{klassendiagramm f"ur Repository und Services}
\subsubsection{Sequenzdiagramm f"ur Repository und Services}






\subsection{L"osung f"ur die offenen Fragen}
\subsubsection{ParameterF}
in JAVA nicht unterst"utzt instanz f"ur eine Methode einer konkreteen Klasse
\\L"osen mit reflection\\
Mit dem Entwurfsmuster "`Strategy"'
IGetParamF, verwalten aller funktion
\\IParamFFunktion, interface f"ur parameter F
\subsubsection{Historie}

\section{Infrastrukturschicht}

\subsection{Strategie zum Aufbauen der Datenbank-Tabellen}
eine Tabelle pro Entit"at
\subsection{Beschr"ankungen der Datenbank-Tabellen}
Mit Hilfe der Aggregaten

\section{Applikationsschicht}
\subsection{Sequenzdiagramm}

\section{Pr"asentationsschicht}
\subsection{Strategie zum Aufbauen der Web-Seiten}
jede Anzeigen eine Seite
\\in der Arbeit wird nur wesentliche Element dargestellt. eine sch"one grahpische Darstellung ist die Aufgabe von anderen.
\section{Verteilen der Objekten in Java-Paketen}
5 Wurzel-Pakete\\
\\de.gugubarra.core.nop
\\de.gugubarra.core.nop.service
\\de.gugubarra.core.nop.service.pf
\\de.gugubarra.core.nop.repository
\\de.gugubarra.core.nop.session
\subsection{Packetdiagramm}

\section{Zusammenfassung}
